package com.yuxi.Controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.yuxi.Entity.CommentRecord;
import com.yuxi.Entity.EvaluationRecord;
import com.yuxi.Entity.Information;
import com.yuxi.Entity.TaskInformationView;
import com.yuxi.Request.InformationQuery;
import com.yuxi.Request.Page;

/**
 * 用户监区流程控制器
 * @version 0.1 2016-07-19 22:45:13
 * @author wyd
 * */
@Controller
public interface UserPrisonAreaInformationController {
	/**
	 *监区民警添加一条信息(1.新建监区流程 ,启动监区流程,2.添加一条信息到信息表 3.增加一条添加信息记录 4.流程进入信息管理节点)
	 *@param information
	 *@return 
	 *@author wyd 
	 * */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/addInformation.do",produces={"application/json;charset=utf-8"})
	public 	String addInformation(Information information,HttpSession session,HttpServletRequest request );
	
	/**
	 *用户修改一条信息(1.修改信息 2.添加修改记录)
	 *@param  information 信息
	 *@author wyd
	 *@author 
	 * */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/userUpdataInformation.do",produces={"application/json;charset=utf-8"})
	public String userUpdataInformation(Information information,HttpSession session,HttpServletRequest request);
	/**
	 *用户删除一条信息（1.跟据ID删除information 2.添加删除记录）
	 *@param information
	 *@author wyd
	 * */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/userDelInformationById.do",produces={"application/json;charset=utf-8"})
	public String userDelInformationById(Information information,HttpSession session,HttpServletRequest request);
	
	/**
	 * 跟据ID查询信息(1.根据条件查询出信息 2.组装返回)
	 * @param
	 * @return 
	 * @author wyd
	 * */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/getUserInformationById.do",produces={"application/json;charset=utf-8"})
	public String getUserInformationById(int informationId,HttpSession session);
	
	/**
	 * 初审信息合并
	 * @param enId
	 * @param temId
	 * @param request
	 * @param session
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/infoTogether.do",produces={"application/json;charset=utf-8"})
	public String infoTogether(String enId,String temId,HttpServletRequest request,HttpSession session);
	
	/**
	 * 初审即时任务派遣
	 * @param informationId
	 * @param personLiableId
	 * @param perSonLiableName
	 * @param remark
	 * @param session
	 * @param request
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/FistCheckFilter/inputLiable.do",produces={"application/json;charset=utf-8"})
	public String inputLiable(int informationId,String personLiableId,String perSonLiableName,String remark,Long overTime,HttpSession session,HttpServletRequest request);

	/**
	 * 任务派遣修改责任人
	 * @param informationId
	 * @param personLiableId
	 * @param perSonLiableName
	 * @param remark
	 * @param overTime
	 * @param request
	 * @param session
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/TaskDispatchFilter/taskDispatchModi.do",produces={"application/json;charset=utf-8"})
	public String taskDispatch(int informationId,String personLiableId,String perSonLiableName,String remark,Long overTime,HttpServletRequest request,HttpSession session);
	
	/**
	 * 即时任务派遣修改责任人
	 * @param informationId
	 * @param personLiableId
	 * @param perSonLiableName
	 * @param remark
	 * @param overTime
	 * @param request
	 * @param session
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/CurTaskDispatchFilter/curTaskDispatchModi.do",produces={"application/json;charset=utf-8"})
	public String curTaskDispatch(int informationId,String personLiableId,String perSonLiableName,String remark,Long overTime,HttpServletRequest request,HttpSession session);

	/**
	 * 录入任务完成情况
	 * */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/TaskFinshFilter/inputTaskFinshContext.do",produces={"application/json;charset=utf-8"})
	public String inputTaskFinshContext(int inforId,int taskId,String context,HttpServletRequest request,HttpSession session);


	/**
	 * @param session
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/getInfoTogether.do",produces={"application/json;charset=utf-8"})
	public String getInfoTogether(HttpSession session);
	
	/**
	 * 用户点评信息 
	 * 
	 * */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/CommentFilter/getInfoTogether.do",produces={"application/json;charset=utf-8"})
	public String userComment(int informationId,String text,String qualityLvId,String taskLvId,String qualityLvName,String taskLvName,String completeText ,HttpServletRequest request,HttpSession session);

	/**
	 * 评价
	 * @param id
	 * @param text
	 * @param session
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/InfoEvaluation/addEvaluate.do",produces={"application/json;charset=utf-8"})
	public String addEvaluate(int id,String text,String peopleId,String peopleName,HttpSession session,HttpServletRequest req);

	/**
	 * 获取所有已处理的流程
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/getAlreadyDoInfoFlow.do",produces={"application/json;charset=utf-8"})
	public String getAlreadyDoInfoFlow(InformationQuery inforQuery,Page<Information> p,int flowId,HttpSession session,HttpServletRequest request);
	
	
	/**
	 * 获取所有已处理的流程
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/getAllInfo.do",produces={"application/json;charset=utf-8"})
	public String getAllInfo(InformationQuery inforQuery,Page<Information> p,String structValue,int structId,HttpSession session,
			HttpServletRequest request );
	/**
	 * 获取所有已处理的流程
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/getLookCommentInfo.do",produces={"application/json;charset=utf-8"})
	public String getLookCommentInfo(InformationQuery inforQuery,Page<Information> p,HttpSession session,
			HttpServletRequest request   );
	/**
	 * 获取所有已处理的流程
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/getLookEvaluationInfo.do",produces={"application/json;charset=utf-8"})
	public String getLookEvaluationInfo(InformationQuery inforQuery,Page<Information> p ,HttpSession session,
			HttpServletRequest request  );
	
	/**
	 * 获取所有已点评记录
	 * */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/getCommentRecord.do",produces={"application/json;charset=utf-8"})
	public String getCommentRecord(InformationQuery informationQuery,Page<Information> p,HttpSession session,HttpServletRequest request);
  
	/**
	 * 获取所有已点评记录
	 * */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/getRate.do",produces={"application/json;charset=utf-8"})
	public String getRate(InformationQuery informationQuery,Page<Information> p,HttpSession session,HttpServletRequest request);
	/**
	 * 获取所有已录入任务完成情况记录
	 * */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/getUserInputTaskContext.do",produces={"application/json;charset=utf-8"})
	public String getUserInputTaskContext(InformationQuery inforQuery,Page<TaskInformationView> p,HttpSession session,HttpServletRequest request);

	/**
	 * 把信息从监区提交到监狱
	 * @param infoId
	 * @param session
	 * @param request
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/prisonAreaToPrison.do"
	,produces={"application/json;charset=utf-8"})
	public String prisonAreaToPrison(Integer infoId,Integer targetPrison,String targetName,String remark,HttpSession session,HttpServletRequest request);
	
	/**
	 * 把信息从监狱提交到监区
	 * @param infoId
	 * @param session
	 * @param request
	 * @return
	 */
	@ResponseBody
	@RequestMapping(value="/LoginFilter/prisonToPrisonArea.do"
	,produces={"application/json;charset=utf-8"})
	public String prisonToPrisonArea(Integer infoId,Integer targetPrison,String targetName,String targetValue,String remark,HttpSession session,HttpServletRequest request);
	
}
